package com.ruoyi.pack.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 器具对象 pack_container
 * 
 * @author ruoyi
 */
public class PackContainer extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 器具ID */
    private Long containerId;

    /** 器具流水编号 */
    @Excel(name = "器具流水编号")
    private String containerCode;

    /** 器具型号编码 */
    @Excel(name = "器具型号编码")
    private String materialCode;

    /** 器具型号名称 */
    @Excel(name = "器具型号名称")
    private String materialName;

    /** 器具归属公司ID */
    @Excel(name = "器具归属公司ID")
    private Long companyId;

    /** 生产日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date productionDate;

    /** 当前所在仓库ID */
    @Excel(name = "当前所在仓库ID")
    private Long currentWarehouseId;
    
    /** 当前所在仓库名称 */
    @Excel(name = "当前所在仓库名称")
    private String currentWarehouseName;

    /** 位置状态（1-在库 2-在途） */
    @Excel(name = "位置状态", readConverterExp = "1=在库,2=在途")
    private String locationStatus;

    /** 业务状态（1-正常 2-封存 3-维修 4-报废） */
    @Excel(name = "业务状态", readConverterExp = "1=正常,2=封存,3=维修,4=报废")
    private String businessStatus;

    /** 装箱状态（1-空箱 2-满箱） */
    @Excel(name = "装箱状态", readConverterExp = "1=空箱,2=满箱")
    private String packingStatus;

    /** 最后装箱时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "最后装箱时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date lastPackingTime;

    /** 最后拆箱时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "最后拆箱时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date lastUnpackingTime;

    /** 当前项目ID */
    @Excel(name = "当前项目ID")
    private Long currentProjectId;

    /** 当前项目编码 */
    @Excel(name = "当前项目编码")
    private String currentProjectCode;

    /** 当前项目名称 */
    @Excel(name = "当前项目名称")
    private String currentProjectName;

    /** 当前装载物料编码 */
    @Excel(name = "当前装载物料编码")
    private String currentMaterialCode;

    /** 当前装载物料名称 */
    @Excel(name = "当前装载物料名称")
    private String currentMaterialName;

    /** 当前装载物料数量 */
    @Excel(name = "当前装载物料数量")
    private Double currentMaterialQuantity;

    /** 当前内衬方案 */
    @Excel(name = "当前内衬方案")
    private String currentLiningScheme;

    /** 最后上报纬度 */
    @Excel(name = "最后上报纬度")
    private Double lastLatitude;

    /** 最后上报经度 */
    @Excel(name = "最后上报经度")
    private Double lastLongitude;

    /** 最后上报时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "最后上报时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date lastUploadTime;

    /** 最后上传日志ID */
    @Excel(name = "最后上传日志ID")
    private Long lastLocationLogId;

    /** 最后上报省份 */
    @Excel(name = "最后上报省份")
    private String lastProvince;

    /** 最后上报城市 */
    @Excel(name = "最后上报城市")
    private String lastCity;

    /** 最后上报区县 */
    @Excel(name = "最后上报区县")
    private String lastDistrict;

    /** 最后上报详细地址 */
    @Excel(name = "最后上报详细地址")
    private String lastAddress;
    
    /** 定位器编码 */
    @Excel(name = "定位器编码")
    private String locatorCode;
    
    /** 绑定的定位器信息 */
    private PackLocator boundLocator;

    public Long getContainerId() {
        return containerId;
    }

    public void setContainerId(Long containerId) {
        this.containerId = containerId;
    }

    public String getContainerCode() {
        return containerCode;
    }

    public void setContainerCode(String containerCode) {
        this.containerCode = containerCode;
    }

    public String getMaterialCode() {
        return materialCode;
    }

    public void setMaterialCode(String materialCode) {
        this.materialCode = materialCode;
    }

    public String getMaterialName() {
        return materialName;
    }

    public void setMaterialName(String materialName) {
        this.materialName = materialName;
    }

    public Long getCompanyId() {
        return companyId;
    }

    public void setCompanyId(Long companyId) {
        this.companyId = companyId;
    }

    public Date getProductionDate() {
        return productionDate;
    }

    public void setProductionDate(Date productionDate) {
        this.productionDate = productionDate;
    }

    public Long getCurrentWarehouseId() {
        return currentWarehouseId;
    }

    public void setCurrentWarehouseId(Long currentWarehouseId) {
        this.currentWarehouseId = currentWarehouseId;
    }

    public String getCurrentWarehouseName() {
        return currentWarehouseName;
    }

    public void setCurrentWarehouseName(String currentWarehouseName) {
        this.currentWarehouseName = currentWarehouseName;
    }

    public String getLocationStatus() {
        return locationStatus;
    }

    public void setLocationStatus(String locationStatus) {
        this.locationStatus = locationStatus;
    }

    public String getBusinessStatus() {
        return businessStatus;
    }

    public void setBusinessStatus(String businessStatus) {
        this.businessStatus = businessStatus;
    }

    public String getPackingStatus() {
        return packingStatus;
    }

    public void setPackingStatus(String packingStatus) {
        this.packingStatus = packingStatus;
    }

    public Date getLastPackingTime() {
        return lastPackingTime;
    }

    public void setLastPackingTime(Date lastPackingTime) {
        this.lastPackingTime = lastPackingTime;
    }

    public Date getLastUnpackingTime() {
        return lastUnpackingTime;
    }

    public void setLastUnpackingTime(Date lastUnpackingTime) {
        this.lastUnpackingTime = lastUnpackingTime;
    }

    public Long getCurrentProjectId() {
        return currentProjectId;
    }

    public void setCurrentProjectId(Long currentProjectId) {
        this.currentProjectId = currentProjectId;
    }

    public String getCurrentProjectCode() {
        return currentProjectCode;
    }

    public void setCurrentProjectCode(String currentProjectCode) {
        this.currentProjectCode = currentProjectCode;
    }

    public String getCurrentProjectName() {
        return currentProjectName;
    }

    public void setCurrentProjectName(String currentProjectName) {
        this.currentProjectName = currentProjectName;
    }

    public String getCurrentMaterialCode() {
        return currentMaterialCode;
    }

    public void setCurrentMaterialCode(String currentMaterialCode) {
        this.currentMaterialCode = currentMaterialCode;
    }

    public String getCurrentMaterialName() {
        return currentMaterialName;
    }

    public void setCurrentMaterialName(String currentMaterialName) {
        this.currentMaterialName = currentMaterialName;
    }

    public Double getCurrentMaterialQuantity() {
        return currentMaterialQuantity;
    }

    public void setCurrentMaterialQuantity(Double currentMaterialQuantity) {
        this.currentMaterialQuantity = currentMaterialQuantity;
    }

    public String getCurrentLiningScheme() {
        return currentLiningScheme;
    }

    public void setCurrentLiningScheme(String currentLiningScheme) {
        this.currentLiningScheme = currentLiningScheme;
    }

    public Double getLastLatitude() {
        return lastLatitude;
    }

    public void setLastLatitude(Double lastLatitude) {
        this.lastLatitude = lastLatitude;
    }

    public Double getLastLongitude() {
        return lastLongitude;
    }

    public void setLastLongitude(Double lastLongitude) {
        this.lastLongitude = lastLongitude;
    }

    public Date getLastUploadTime() {
        return lastUploadTime;
    }

    public void setLastUploadTime(Date lastUploadTime) {
        this.lastUploadTime = lastUploadTime;
    }

    public Long getLastLocationLogId() {
        return lastLocationLogId;
    }

    public void setLastLocationLogId(Long lastLocationLogId) {
        this.lastLocationLogId = lastLocationLogId;
    }

    public String getLastProvince() {
        return lastProvince;
    }

    public void setLastProvince(String lastProvince) {
        this.lastProvince = lastProvince;
    }

    public String getLastCity() {
        return lastCity;
    }

    public void setLastCity(String lastCity) {
        this.lastCity = lastCity;
    }

    public String getLastDistrict() {
        return lastDistrict;
    }

    public void setLastDistrict(String lastDistrict) {
        this.lastDistrict = lastDistrict;
    }

    public String getLastAddress() {
        return lastAddress;
    }

    public void setLastAddress(String lastAddress) {
        this.lastAddress = lastAddress;
    }

    public String getLocatorCode() {
        return locatorCode;
    }

    public void setLocatorCode(String locatorCode) {
        this.locatorCode = locatorCode;
    }

    public PackLocator getBoundLocator() {
        return boundLocator;
    }

    public void setBoundLocator(PackLocator boundLocator) {
        this.boundLocator = boundLocator;
    }
} 